object TestMap {
  def main(args: Array[String]): Unit = {

    /**
     * @ 7.5 Map集合
     * Scala中的Map和Java类似，也是一个散列表，它存储的内容也是键值对（key-value）映射
     * @ 7.5.1 不可变Map
     * 1）说明
     * （1）创建不可变集合Map
     * （2）循环打印
     * （3）访问数据
     * （4）如果key不存在，返回0
     * */
    // Map
    //（1）创建不可变集合Map
    val map = Map("a" -> 1, "b" -> 2, "c" -> 3)

    //（3）访问数据
    for (elem <- map.keys) {
      // 使用get访问map集合的数据，会返回特殊类型Option(选项): 有值（Some），无值(None)
      println(elem + "=" + map(elem))
    }

    //（4）如果key不存在，返回0
    println(map.get("d").getOrElse(0))
    println(map.getOrElse("d", 0))

    //（2）循环打印
    map.foreach((kv) => {
      println(kv)
    })
  }
}
